#include "cabecera.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>


struct Ficha_jugador* reservaMemoria(int nEle){
	struct Ficha_jugador* aux = (struct Ficha_jugador*) malloc(nEle*sizeof(struct Ficha_jugador));
	return aux;

}

struct Ficha_jugador leeJugador(){
	struct Ficha_jugador aux;
	printf("Introduzca el nombre del jugador:");
	getchar();
	fgets(aux.nombre, 50, stdin);
	aux.nombre[strlen(aux.nombre) - 1] = '\0';

	printf("Introduzca el dorsal del player:");
	scanf("%d",&aux.dorsal);

	printf("Introduzca el peso del jugador:");
	scanf("%f", &aux.peso);

	printf("¿Cual es la altura del jugador?");
	scanf("%d", &aux.estatura);


	return aux;

}

void leeJugadores(struct Ficha_jugador* v, int nEle){
	int i;
	for (i = 0; i < nEle; ++i)
	{
		printf("Jugador [Nº %d]\n",i);
		*(v+i) = leeJugador();
	}
}

void imprimeJugadores (struct Ficha_jugador* v, int nEle){
	int i;
	for(i=0 ; i<nEle; i++)
	{
		printf("Jugador [Nº %d]\n",i);
		printf("___________________\n");
		printf("Nombre: %s\n", (v+i)->nombre);
		printf("Dorsal: %d\n", (v+i)->dorsal);
		printf("Peso: %f\n", (v+i)->peso);
		printf("Estatura: %i\n", (v+i)->estatura);
	}
	
}

int borraJugador(struct Ficha_jugador* v, int nEle, char caracter, struct Ficha_jugador* aux){
	int i,contador=0,j=0;
	for(i=0; i<nEle ; i++){
		if(strchr((v+i)->nombre, caracter) != NULL || strchr((v+i)->nombre, caracter-32) != NULL)
		{
			contador++;
		}
		else
		{
			aux[j] = v[i];
			j++;
		}
	}
	aux = (struct Ficha_jugador*) realloc(v, (nEle-contador)*sizeof(struct Ficha_jugador));
	free(v);
	return contador;
}
